We have moved, and we have new telephone numbers and e-mail addresses.
US: 800 799 4737.
Europe: +44 1628 660242; fax: +44 1628 666084.
Internet: "sales@fullmoon.com", and "support@fullmoon.com".
"True" single stepping
This version of ScriptWizard supports 'true' single stepping: even if the event log window is closed, when single stepping is activated the lines of AppleScript in the script editing window will be highlighted one by one as script execution proceeds. You can step through subroutine invocations and message sends. To see the script source code "animate" while the script actually runs, start single stepping as normal, and as soon as the first line of the script is highlighted click the "run" button.
When you single-step a script, ScriptWizard has to do a little bit of work to prepare itself. If the script is very long, this can take up to a minute or more. If ScriptWizard is unable to cope with single stepping a particular script it will report the problem via an alert window. If you disable 'animated single stepping' in the Script menu, the program will instead use the simpler Apple event stepping mechanism supported in ScriptWizard 1.0. (If you find a reproducible case in which ScriptWizard refuses to step your script, please send the script by email to us, so we can identify the problem.)
A new version of the "pause script" OSAX is supplied with SW 1.5; this must be installed for animated single-stepping to work. An error message is shown if it is missing, or if an out of date version is present.
When the Script editing window is in front, you can single step by pressing the key combination 'command-shift-S'.
When a script execution error occurs during single stepping, the currently executing line will be highlighted, not the sub-expression in which the failure occurred.
Technical Note: The single stepping mechanism we use is fully compatible with the normal OSA APIs, and is internationalizable so it is not restricted to the US English dialect of AppleScript (unlike other single stepping schemes). The current release of ScriptWizard is specific to the AppleScript English dialect. We are committed to fully supporting all international dialects of AppleScript.
Use ScriptWizard as an External Editor for FaceSpan 2.0
Now you can use ScriptWizard as an external editor for FaceSpan 2.0. It's easy; use it like this:
- create an alias to ScriptWizard, called "External Script Editor"
- drop the alias into the FaceSpan folder (at the same level as the FaceSpan application)
- when opening an object's script in FaceSpan, hold down the 'option' key
- the script will be opened in ScriptWizard
- when you 'save' the script it will be sent back to FaceSpan
- you can still 'save as' the script in a regular file
Dictionaries Menu now lists your favorite Scriptable Apps
We have moved the 'open finder dictionary' and 'open system dictionary' commands to a new 'Open Special Dictionary' hierarchical submenu of the File menu. When opening dictionaries, ScriptWizard appends the application name to the above submenu, so you can quickly reopen your favourite dictionaries. ScriptWizard stores the contents of this menu in its preferences file for subsequent runs; if on restarting the program a file referred to in the list can't be found, it is deleted from the list.
'Projector' awareness for source code control
In v1.5 we have added new a menu command to the Edit menu: 'Modify Read-Only File'. This is only enabled for script and text files that have a projector 'ckid' resource. To go with this we have implemented full projector awareness (we don't allow editing of a read-only script, and write the 'ckid' resource back out when saving files). The Script editing window shows a read-only symbol in script window header if the document is checked out read-only, and also during script runs, when a script is not editable.
"Source Safe" compatibility will be added in a later version of ScriptWizard.
Find & Replace
A much faster internal mechanism has been used in the redesigned Find & Replace. You can also specify case-sensitivity and wrap-around searching using checkboxes in the Find window (click the little triangle-control in the bottom left corner to show them).
Toolbar
You can now hide the toolbar (click the 'go-away' box, or use the menu command), or re-orient it to a vertical shape (click in the 'zoom' box). The toolbar's shape and position are saved in the preferences file.
Drag & Drop editing
Drage & drop editing is now fully supported. Use it to grab definitions in the Dictionary and move them to the Script editing window, or use it to create and manage a library of favorite script 'snippets' in a folder on your hard drive. Requires System 7.5 to support Finder Drag & Drop integration.
Live Scrolling
Scroll bars are now "live" – when you drag the box in the scroll bar, the document scrolls right in front of you without waiting for you to let go. This feature can be disabled using the "Preferences" window.
Variable Watcher
The Variable Watcher has been rewritten; the two main changes visible to users are:
- there is a user-resizable lower pane that, when you click on a variable name in the list, displays the selected variable's value in full (you will need to resize the pane if the value is a long one);
- the internal mechanisms display longer variable lists faster.
Dictionary Windows
We have made initial Dictionary text styles match the Apple Script Editor. You can now change the text styles used to display Dictionary window listings through the AppleScript Formatting window (the new style names appear at the end of the scrolling list).
Re-sizable Panes
The Variable Watcher and Dictionary windows now offer resizable panes: simply click and drag the (double-line) pane boundaries.
It's Scriptable (and Recordable)
ScriptWizard is now scriptable, so you can control one script document from another (great for debugging handlers). The syntax to use is something like this:
tell document "my compiled script"
callMySubroutine(param1, param2) -- sending an arbitrary message
end tell
or
tell document "my compiled script"
run -- sending a predefined Apple event
end tell
The following new apple events have been defined (see the Dictionary for fuller details), and operate on open script documents (note: the direct object should be the document, not the window); via these events, the script-control toolbar is now scriptable and recordable:
"compile script"
"run script"
"step script"
"pause script"
"stop script"
"start recording"
"stop recording"
Two new Apple event classes have been defined to return error status information after a script compilation or execution failure: script error record, and script error range (see the Dictionary for fuller details); after a failure has been reported, send the following new apple event message to get full details of the error:
"script error"
Preferences window
There is a general Preferences window, to let you select:
- the maximum number of entries in dictionaries menu
- whether to use Live scrolling (on slower Macs you should turn this off)
- whether to display progress messages during compilations
Miscellaneous changes
There are many minor changes and even more bug fixes, but here are some you should know about:
Hold down the option key, to force compilation, when asking for syntax check.
Description pane in script editor now has a vertical scroll bar when the text is longer than the pane.
The "Find" menu and "Script" menus now place checkmarks against the menu commands that open windows, and these menu commands can now be used to close already-open windows.
Several of the menu commands have been moved, but they are still there (just in different menus).
Known Problems
Almost every reported bug, and a lot more discovered during our own testing, has been fixed.
Now Utilities Super Boomerang remains incompatible with our save & save-as file dialogs. This will be corrected shortly, by means of an on-line patch.
Special note: we've had reports that certain resources inside the ScriptWizard 1.5 program file are corrupt and can't be opened in ResEdit; the truth is that they are not corrupted, we are using software that compresses the contents of the program file and as a side effect of this, the program's resources are not hackable in ResEdit. Sorry.